package cn.hjh.rpc.define;

import cn.hjh.rpc.common.RPCContants;


/**
 * RPC实体对象类
 * @author jianhua.huang
 * */
public class RPCClientBean
{

	/** 发送队列名称*/
	private String sendQueueName;
	
	/** 发送的队列路由key*/
	private String sendQueueKey;
	
	/** 应答的队列名称*/
	private String replyQueueName;
	
	/** 应答队列路由key*/
	private String replyQueueKey;
	
	/** 交换机名称*/
	private String exchangeName;
	
	/**默认是固定应答模式*/
	private ReplyMode replyMode = ReplyMode.FIX;
	
	/** 指定链接工厂的引用，如果不指定，默认为rabbitConnFactory*/
	private String connFactoryRef;
	
	/** 消息监听并发数量，默认是2*/
	private int concurrentConsumers = 2;
	
	/** 预取消息量，默认是5*/
	private int prefetchCount = 5;
	
	/** RPC应答超时时间，默认10秒*/
	private int replyTimeout = RPCContants.REPLY_TIMEOUT;
	
	public String getConnFactoryRef()
	{
		return connFactoryRef;
	}

	public void setConnFactoryRef(String connFactoryRef)
	{
		this.connFactoryRef = connFactoryRef;
	}

	public int getReplyTimeout()
	{
		return replyTimeout;
	}

	public void setReplyTimeout(int replyTimeout)
	{
		this.replyTimeout = replyTimeout;
	}

	public int getConcurrentConsumers()
	{
		return concurrentConsumers;
	}

	public void setConcurrentConsumers(int concurrentConsumers)
	{
		this.concurrentConsumers = concurrentConsumers;
	}

	public int getPrefetchCount()
	{
		return prefetchCount;
	}

	public void setPrefetchCount(int prefetchCount)
	{
		this.prefetchCount = prefetchCount;
	}

	public String getReplyQueueKey()
	{
		return replyQueueKey;
	}

	public void setReplyQueueKey(String replyQueueKey)
	{
		this.replyQueueKey = replyQueueKey;
	}

	public String getExchangeName()
	{
		return exchangeName;
	}

	public void setExchangeName(String exchangeName)
	{
		this.exchangeName = exchangeName;
	}

	public String getSendQueueName()
	{
		return sendQueueName;
	}

	public void setSendQueueName(String sendQueueName)
	{
		this.sendQueueName = sendQueueName;
	}

	public String getSendQueueKey()
	{
		return sendQueueKey;
	}

	public void setSendQueueKey(String sendQueueKey)
	{
		this.sendQueueKey = sendQueueKey;
	}

	public String getReplyQueueName()
	{
		return replyQueueName;
	}

	public void setReplyQueueName(String replyQueueName)
	{
		this.replyQueueName = replyQueueName;
	}

	public ReplyMode getReplyMode()
	{
		return replyMode;
	}

	public void setReplyMode(ReplyMode replyMode)
	{
		this.replyMode = replyMode;
	}

}
